package com.vdong.trade.order.entity.dto.param;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.RequiredArgsConstructor;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @description: 封装DTO
 * @author: Mr.WangGang
 * @create: 2018-12-03 下午 6:40
 **/
@Data
@Builder
@AllArgsConstructor
@RequiredArgsConstructor
public class OrderStateMachineTransitionParamDTO<T> {

    @NotBlank
    private String source;
    @NotBlank
    private String target;
    @NotBlank
    private String event;
    @NotNull
    @Valid
    private T data;
}
